// File generated from our OpenAPI spec by Stainless.

package com.metest.api.services.async.rest

import com.metest.api.TestServerExtension
import com.metest.api.client.okhttp.MetestOkHttpClientAsync
import org.junit.jupiter.api.Disabled
import org.junit.jupiter.api.Test
import org.junit.jupiter.api.extension.ExtendWith

@ExtendWith(TestServerExtension::class)
internal class ActuatorServiceAsyncTest {

    @Disabled("Prism tests are disabled")
    @Test
    fun retrieve() {
        val client =
            MetestOkHttpClientAsync.builder()
                .baseUrl(TestServerExtension.BASE_URL)
                .apiKey("My API Key")
                .build()
        val actuatorServiceAsync = client.rest().actuator()

        val actuatorFuture = actuatorServiceAsync.retrieve()

        val actuator = actuatorFuture.get()
        actuator.validate()
    }

    @Disabled("Prism tests are disabled")
    @Test
    fun beans() {
        val client =
            MetestOkHttpClientAsync.builder()
                .baseUrl(TestServerExtension.BASE_URL)
                .apiKey("My API Key")
                .build()
        val actuatorServiceAsync = client.rest().actuator()

        val responseFuture = actuatorServiceAsync.beans()

        val response = responseFuture.get()
        response.validate()
    }

    @Disabled("Prism tests are disabled")
    @Test
    fun conditions() {
        val client =
            MetestOkHttpClientAsync.builder()
                .baseUrl(TestServerExtension.BASE_URL)
                .apiKey("My API Key")
                .build()
        val actuatorServiceAsync = client.rest().actuator()

        val responseFuture = actuatorServiceAsync.conditions()

        val response = responseFuture.get()
        response.validate()
    }

    @Disabled("Prism tests are disabled")
    @Test
    fun health() {
        val client =
            MetestOkHttpClientAsync.builder()
                .baseUrl(TestServerExtension.BASE_URL)
                .apiKey("My API Key")
                .build()
        val actuatorServiceAsync = client.rest().actuator()

        val responseFuture = actuatorServiceAsync.health()

        val response = responseFuture.get()
        response.validate()
    }

    @Disabled("Prism tests are disabled")
    @Test
    fun info() {
        val client =
            MetestOkHttpClientAsync.builder()
                .baseUrl(TestServerExtension.BASE_URL)
                .apiKey("My API Key")
                .build()
        val actuatorServiceAsync = client.rest().actuator()

        val responseFuture = actuatorServiceAsync.info()

        val response = responseFuture.get()
        response.validate()
    }

    @Disabled("Prism tests are disabled")
    @Test
    fun mappings() {
        val client =
            MetestOkHttpClientAsync.builder()
                .baseUrl(TestServerExtension.BASE_URL)
                .apiKey("My API Key")
                .build()
        val actuatorServiceAsync = client.rest().actuator()

        val responseFuture = actuatorServiceAsync.mappings()

        val response = responseFuture.get()
        response.validate()
    }

    @Disabled("Prism tests are disabled")
    @Test
    fun scheduledtasks() {
        val client =
            MetestOkHttpClientAsync.builder()
                .baseUrl(TestServerExtension.BASE_URL)
                .apiKey("My API Key")
                .build()
        val actuatorServiceAsync = client.rest().actuator()

        val responseFuture = actuatorServiceAsync.scheduledtasks()

        val response = responseFuture.get()
        response.validate()
    }

    @Disabled("Prism tests are disabled")
    @Test
    fun threaddump() {
        val client =
            MetestOkHttpClientAsync.builder()
                .baseUrl(TestServerExtension.BASE_URL)
                .apiKey("My API Key")
                .build()
        val actuatorServiceAsync = client.rest().actuator()

        val responseFuture = actuatorServiceAsync.threaddump()

        val response = responseFuture.get()
        response.validate()
    }
}
